//#include <REGX52.H>
//int seconds=60,count=0;

//void Delay(unsigned int xms)  //数码管延时函数
//{
//	unsigned char i, j;
//	while(xms--)
//	{
//		i = 2;
//		j = 239;
//		do
//		{
//			while (--j);
//		} while (--i);
//	}
//}

//void SG(int a,int b)   //数码管函数
//{
//	unsigned char Tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40};
//  unsigned char Count[]={0x01,0x02};
//	P2=Count[a];
//	P0=~Tab[b];
//	Delay(6);
//}

//void timerInit()  //定时器初始化
//{
//	 TMOD|=0x01;
//	 TH0=(65536-50000)/256;
//	 TL0=(65536-50000)%256;
//	 ET0=1;
//	 TR0=1;
//	 EA=1;
//	
//}

//void ITR_Init()  //外部中断初始化
//{
//	IT0=1;
//	EX0=1;
//	PX0=1;
//	
//	IT1=1;
//	EX1=1;
//	PX1=1;
//}

//void main()
//{
//	timerInit();
//	ITR_Init();
//	while(1)
//	{
//		SG(0,seconds/10);
//		SG(1,seconds%10);
//	}
//}

//void Timer() interrupt 1    //定时器中断函数
//{
//	 TH0=(65536-50000)/256;
//	 TL0=(65536-50000)%256;
//	  
//	 count++;
//	if(count==20)
//	{
//		seconds--;
//		count=0;
//	}
//	if(seconds<0)
//	{
//		seconds=60;
//	}
//	

//}
//void IRT0() interrupt 0    //外部中断0--->复位
//{
//	seconds=60;
//}
//void IRT1() interrupt 2    //外部中断1--->暂停/开始
//{
//	TR0=~TR0;
//}





#include <REGX52.H>
int seconds=60,count=0;

void Delay(unsigned int xms)  //数码管延时函数
{
	unsigned char i, j;
	while(xms--)
	{
		i = 2;
		j = 239;
		do
		{
			while (--j);
		} while (--i);
	}
}

void SG(int a,int b)   //数码管函数
{
	unsigned char Tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40};
  unsigned char Count[]={0x01,0x02};
	P2=Count[a];
	P0=~Tab[b];
	Delay(6);
}


void ITR_Init()  //外部中断初始化
{
	IT0=1;
	EX0=1;
	PX0=1;
	
	IT1=1;
	EX1=1;
	PX1=1;
	EA=1;
}

void main()
{
	//timerInit();
	ITR_Init();
	while(1)
	{
		SG(0,seconds/10);
		SG(1,seconds%10);
	}
}


void IRT0() interrupt 0    //外部中断0--->复位
{
	seconds++;
	if(seconds==100)
	{
		seconds=0;
	}
	
}
void IRT1() interrupt 2    //外部中断1--->暂停/开始
{
	seconds=0;
}